﻿@*
// MonoGame - Copyright (C) The MonoGame Team
// This file is subject to the terms and conditions defined in
// file 'LICENSE.txt', which is part of this source code package.
*@
@model SharpDoc.TemplateContext
@using SharpDoc.Model
@Import("SyntaxMethod")
@Import("SyntaxProperty")
@Import("TabCode")
@Import("SyntaxCodeCSharp")
@Import("SyntaxCodeVB")
@Import("SyntaxCodeFSharp")
@*// Dumps syntax section*@
@helper Dump(NMember member)
{
    @Helpers.TabCode.Dump(new string[] {
        "C#",  "<pre class='brush: csharp;'>" + Escape(Helpers.SyntaxCodeCSharp.Dump(member)) + "</pre>",
        "VB",  Helpers.SyntaxCodeVB.Dump(member),
        "F#",  Helpers.SyntaxCodeFSharp.Dump(member),
    });

    if (member is NMethod)
    {
        @Helpers.SyntaxMethod.Dump((NMethod) member)
    }
    else if (member is NProperty)
    {
        @Helpers.SyntaxProperty.Dump((NProperty) member)
    }
    else if (member is NDelegate)
    {
        @Helpers.SyntaxMethod.Dump(((NDelegate) member).Invoke)
    }
    else if (member is NType)
    {
        <p>The @member.Name type exposes the following members.</p>
    }
}
